package be.ipl.eBar.usecasesimpl;

import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import be.ipl.eBar.dao.BiereDao;
import be.ipl.eBar.domaine.Biere;
import be.ipl.eBar.exceptions.ArgumentInvalideException;
import be.ipl.eBar.usecases.GestionBieres;

@Stateless
public class GestionBieresImpl implements GestionBieres {
	@EJB BiereDao biereDao;
	
	@Override
	public Biere enregistrer(Biere biere) {
		return biereDao.enregistrer(biere);
	}

	@Override
	public List<Biere> listerBieres() {
		return biereDao.lister();
	}

	@Override
	public List<Biere> listerBieres(String mot) {
		return biereDao.lister(mot);
	}

	@Override
	public Biere modifierPrix(String nomBiere, double nouveauPrix) throws ArgumentInvalideException {
		Biere biere = biereDao.rechercher(nomBiere);
		biere.setPrix(nouveauPrix);
		return biere;
	}

	@Override
	public Biere rechercherBiere(String nom) {
		return biereDao.rechercher(nom);
	}

	@Override
	public void supprimerBiere(String nomBiere) {
		Biere biere = biereDao.rechercher(nomBiere);
		biereDao.supprimer(biere.getId());
	}

	@Override
	public Biere chargerTout(Biere biere) {
		return biereDao.chargerFournisseurs(biere);
	}

}
